<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8" />
  <title>Foo namespace | My Project</title>
  <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,400i,600,600i%7CSource+Code+Pro:400,400i,600" />
  <link rel="stylesheet" href="m-dark+documentation.compiled.css" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
</head>
<body>
<header><nav id="navigation">
  <div class="m-container">
    <div class="m-row">
      <a href="index.html" id="m-navbar-brand" class="m-col-t-8 m-col-m-none m-left-m">My Project</a>
    </div>
  </div>
</nav></header>
<main><article>
  <div class="m-container m-container-inflatable">
    <div class="m-row">
      <div class="m-col-l-10 m-push-l-1">
        <h1>
          Foo <span class="m-thin">namespace</span>
          <div class="m-doc-include m-code m-inverted m-text-right"><span class="cp">#include</span> <a class="cpf" href="File_8h.html">&lt;File.h&gt;</a></div>
        </h1>
        <p>A namespace.</p>
        <nav class="m-block m-default">
          <h3>Contents</h3>
          <ul>
            <li>
              Reference
              <ul>
                <li><a href="#func-members">Functions</a></li>
              </ul>
            </li>
          </ul>
        </nav>
        <section id="func-members">
          <h2><a href="#func-members">Functions</a></h2>
          <dl class="m-doc">
            <dt>
              <div class="m-doc-template">template&lt;class T, class UndocumentedTemplate&gt;</div>
              <span class="m-doc-wrap-bumper">auto <a href="#a6a1f9ee341c4ae2ec463d900690893b0" class="m-doc">foo</a>(</span><span class="m-doc-wrap">int a,
              std::string b,
              char(&amp;things)[5],
              bool,
              char(&amp;)[42],
              int stuff[],
              double[1337]) -&gt; int</span>
            </dt>
            <dd>Function with <em>everything</em></dd>
            <dt>
              <span class="m-doc-wrap-bumper">void <a href="#a256688820e6f5564e3210874bbda84c3" class="m-doc">bar</a>(</span><span class="m-doc-wrap">int in,
              int&amp; out,
              void* shit) <span class="m-label m-flat m-primary">constexpr</span> <span class="m-label m-flat m-success">noexcept</span></span>
            </dt>
            <dd>Input and output.</dd>
            <dt>
              <span class="m-doc-wrap-bumper">auto <a href="#ada6488b07291f349307778cc7bb3547d" class="m-doc">justReturn</a>(</span><span class="m-doc-wrap">) -&gt; int</span>
            </dt>
            <dd>Function.</dd>
            <dt>
              <span class="m-doc-wrap-bumper">auto <a href="#a2aed7a8280e0ed79f5f9ceb0d54f4a30" class="m-doc">justReturnValues</a>(</span><span class="m-doc-wrap">) -&gt; int</span>
            </dt>
            <dd>Function.</dd>
            <dt>
              <span class="m-doc-wrap-bumper">auto <a href="#a7241bb505b7eda882e8508c47062fc3b" class="m-doc">justExceptions</a>(</span><span class="m-doc-wrap">) -&gt; int</span>
            </dt>
            <dd>Function.</dd>
            <dt>
              <div class="m-doc-template">template&lt;class A, class B&gt;</div>
              <span class="m-doc-wrap-bumper">auto <a href="#aea7a925ccf30c967a965b2549cec4154" class="m-doc">bar</a>(</span><span class="m-doc-wrap">int a,
              int b) -&gt; int</span>
            </dt>
            <dd>A function with scattered docs.</dd>
            <dt>
              <span class="m-doc-wrap-bumper">void <a href="#a1e4e8c2c75da6e24d78c8a84e0cb3226" class="m-doc">thisIsAShittyWayToPassAVectorButWhatever</a>(</span><span class="m-doc-wrap">float x,
              float y,
              float z)</span>
            </dt>
            <dd>Function with one description for all params.</dd>
          </dl>
        </section>
        <section>
          <h2>Function documentation</h2>
          <section class="m-doc-details" id="a6a1f9ee341c4ae2ec463d900690893b0"><div>
            <h3>
              <div class="m-doc-template">
                template&lt;class T, class UndocumentedTemplate&gt;
              </div>
              <span class="m-doc-wrap-bumper">int Foo::<wbr /></span><span class="m-doc-wrap"><span class="m-doc-wrap-bumper"><a href="#a6a1f9ee341c4ae2ec463d900690893b0" class="m-doc-self">foo</a>(</span><span class="m-doc-wrap">int a,
              std::string b,
              char(&amp;things)[5],
              bool,
              char(&amp;)[42],
              int stuff[],
              double[1337])</span></span>
            </h3>
            <p>Function with <em>everything</em></p>
            <table class="m-table m-fullwidth m-flat">
              <thead>
                <tr><th colspan="2">Template parameters</th></tr>
              </thead>
              <tbody>
                <tr>
                  <td style="width: 1%">T</td>
                  <td>A template, innit</td>
                </tr>
              </tbody>
              <thead>
                <tr><th colspan="2">Parameters</th></tr>
              </thead>
              <tbody>
                <tr>
                  <td>a</td>
                  <td>That&#x27;s a for you</td>
                </tr>
                <tr>
                  <td>b</td>
                  <td>Well, a string</td>
                </tr>
                <tr>
                  <td>things</td>
                  <td>And an array!</td>
                </tr>
                <tr>
                  <td>stuff</td>
                  <td>Another array</td>
                </tr>
              </tbody>
              <thead>
                <tr>
                  <th>Returns</th>
                  <td>It returns!</td>
                </tr>
              </thead>
              <tbody>
                <tr>
                  <td>0</td>
                  <td>Zero?</td>
                </tr>
                <tr>
                  <td>42</td>
                  <td>The Answer.</td>
                </tr>
              </tbody>
            </table>
<p>Ooooh, more text! The <code>UndocumentedTemplate</code> shouldn&#x27;t appear in the template detailed description, same as with the class.</p>
          </div></section>
          <section class="m-doc-details" id="a256688820e6f5564e3210874bbda84c3"><div>
            <h3>
              <span class="m-doc-wrap-bumper">void Foo::<wbr /></span><span class="m-doc-wrap"><span class="m-doc-wrap-bumper"><a href="#a256688820e6f5564e3210874bbda84c3" class="m-doc-self">bar</a>(</span><span class="m-doc-wrap">int in,
              int&amp; out,
              void* shit) <span class="m-label m-primary">constexpr</span> <span class="m-label m-success">noexcept</span></span></span>
            </h3>
            <p>Input and output.</p>
            <table class="m-table m-fullwidth m-flat">
              <thead>
                <tr><th colspan="2">Parameters</th></tr>
              </thead>
              <tbody>
                <tr>
                  <td style="width: 1%">in&nbsp;<span class="m-label m-flat m-info">in</span></td>
                  <td>Input</td>
                </tr>
                <tr>
                  <td>out&nbsp;<span class="m-label m-flat m-warning">out</span></td>
                  <td>Output</td>
                </tr>
                <tr>
                  <td>shit&nbsp;<span class="m-label m-flat m-danger">in/out</span></td>
                  <td>Well, that&#x27;s messy</td>
                </tr>
              </tbody>
            </table>
          </div></section>
          <section class="m-doc-details" id="ada6488b07291f349307778cc7bb3547d"><div>
            <h3>
              <span class="m-doc-wrap-bumper">int Foo::<wbr /></span><span class="m-doc-wrap"><span class="m-doc-wrap-bumper"><a href="#ada6488b07291f349307778cc7bb3547d" class="m-doc-self">justReturn</a>(</span><span class="m-doc-wrap">)</span></span>
            </h3>
            <p>Function.</p>
            <table class="m-table m-fullwidth m-flat">
              <tfoot>
                <tr>
                  <th style="width: 1%">Returns</th>
                  <td>With just return value docs should still have detailed section</td>
                </tr>
              </tfoot>
            </table>
          </div></section>
          <section class="m-doc-details" id="a2aed7a8280e0ed79f5f9ceb0d54f4a30"><div>
            <h3>
              <span class="m-doc-wrap-bumper">int Foo::<wbr /></span><span class="m-doc-wrap"><span class="m-doc-wrap-bumper"><a href="#a2aed7a8280e0ed79f5f9ceb0d54f4a30" class="m-doc-self">justReturnValues</a>(</span><span class="m-doc-wrap">)</span></span>
            </h3>
            <p>Function.</p>
            <table class="m-table m-fullwidth m-flat">
              <thead>
                <tr><th colspan="2">Returns</th></tr>
              </thead>
              <tbody>
                <tr>
                  <td style="width: 1%">42</td>
                  <td>With just return value docs should still have detailed section</td>
                </tr>
              </tbody>
            </table>
          </div></section>
          <section class="m-doc-details" id="a7241bb505b7eda882e8508c47062fc3b"><div>
            <h3>
              <span class="m-doc-wrap-bumper">int Foo::<wbr /></span><span class="m-doc-wrap"><span class="m-doc-wrap-bumper"><a href="#a7241bb505b7eda882e8508c47062fc3b" class="m-doc-self">justExceptions</a>(</span><span class="m-doc-wrap">)</span></span>
            </h3>
            <p>Function.</p>
            <table class="m-table m-fullwidth m-flat">
              <thead>
                <tr><th colspan="2">Exceptions</th></tr>
              </thead>
              <tbody>
                <tr>
                  <td style="width: 1%">std::bad_exception</td>
                  <td>With just exception docs should still have detailed section</td>
                </tr>
              </tbody>
            </table>
          </div></section>
          <section class="m-doc-details" id="aea7a925ccf30c967a965b2549cec4154"><div>
            <h3>
              <div class="m-doc-template">
                template&lt;class A, class B&gt;
              </div>
              <span class="m-doc-wrap-bumper">int Foo::<wbr /></span><span class="m-doc-wrap"><span class="m-doc-wrap-bumper"><a href="#aea7a925ccf30c967a965b2549cec4154" class="m-doc-self">bar</a>(</span><span class="m-doc-wrap">int a,
              int b)</span></span>
            </h3>
            <p>A function with scattered docs.</p>
            <table class="m-table m-fullwidth m-flat">
              <thead>
                <tr><th colspan="2">Template parameters</th></tr>
              </thead>
              <tbody>
                <tr>
                  <td style="width: 1%">A</td>
                  <td>First template parameter docs</td>
                </tr>
                <tr>
                  <td>B</td>
                  <td>Second template parameter docs</td>
                </tr>
              </tbody>
              <thead>
                <tr><th colspan="2">Parameters</th></tr>
              </thead>
              <tbody>
                <tr>
                  <td>a</td>
                  <td>First parameter docs</td>
                </tr>
                <tr>
                  <td>b</td>
                  <td>Second parameter docs</td>
                </tr>
              </tbody>
              <thead>
                <tr><th colspan="2">Returns</th></tr>
              </thead>
              <tbody>
                <tr>
                  <td>0</td>
                  <td>Zero</td>
                </tr>
                <tr>
                  <td>1337</td>
                  <td>1337 h4xx0r?!</td>
                </tr>
                <tr>
                  <td>42</td>
                  <td>The answer. To everything</td>
                </tr>
              </tbody>
              <thead>
                <tr><th colspan="2">Exceptions</th></tr>
              </thead>
              <tbody>
                <tr>
                  <td>std::bad_function_call</td>
                  <td>if you call the function bad</td>
                </tr>
                <tr>
                  <td>std::future_error</td>
                  <td>if you are from the future</td>
                </tr>
              </tbody>
            </table>
<p>This is a function that has the docs all scattered around. They should get merged and reordered.</p><p>That goes also for the return values.</p><p>Yes?</p><ul><li>We also need to</li><li>extract them out of a list</li></ul>
          </div></section>
          <section class="m-doc-details" id="a1e4e8c2c75da6e24d78c8a84e0cb3226"><div>
            <h3>
              <span class="m-doc-wrap-bumper">void Foo::<wbr /></span><span class="m-doc-wrap"><span class="m-doc-wrap-bumper"><a href="#a1e4e8c2c75da6e24d78c8a84e0cb3226" class="m-doc-self">thisIsAShittyWayToPassAVectorButWhatever</a>(</span><span class="m-doc-wrap">float x,
              float y,
              float z)</span></span>
            </h3>
            <p>Function with one description for all params.</p>
            <table class="m-table m-fullwidth m-flat">
              <thead>
                <tr><th colspan="2">Parameters</th></tr>
              </thead>
              <tbody>
                <tr>
                  <td style="width: 1%">x</td>
                  <td>Coordinates in 3D space</td>
                </tr>
                <tr>
                  <td>y</td>
                  <td>Coordinates in 3D space</td>
                </tr>
                <tr>
                  <td>z</td>
                  <td>Coordinates in 3D space</td>
                </tr>
              </tbody>
            </table>
          </div></section>
        </section>
      </div>
    </div>
  </div>
</article></main>
</body>
</html>
